{ INFORMATICS.MCCME.RU
  Problem statement: http://informatics.mccme.ru/moodle/mod/statements/view3.php?chapterid=2867
  Verdict: Accepted
}
uses
	SysUtils, Math;
 
const
	N='NORTH';
	W='WEST';
	E='EAST';
	S='SOUTH';
	BL='BLOCKED';
	EM='EMPTY';
	DN='DONE';
 
var
	a:array[0..80,0..80] of shortint;
 
procedure cl();
begin
flush(output);
end;
 
function put(s:string):string;
begin
writeln(s);
cl();
readln(result);
end;
 
procedure done();
begin
writeln(DN);
cl();
halt(0);
end;     
 
procedure go(x,y:longint);
 
var
	i,j:longint;
 
begin
i:=x-1;
j:=y;
if a[i][j]=0 then begin
	if put(N)=EM then begin
		a[i][j]:=1;
		go(i,j);
		put(S);
	end else a[i][j]:=-1;
end;
i:=x;
j:=y+1;
if a[i][j]=0 then begin
	if put(E)=EM then begin
		a[i][j]:=1;
		go(i,j);
		put(W);
	end else a[i][j]:=-1;
end;    
i:=x;
j:=y-1;
if a[i][j]=0 then begin
	if put(W)=EM then begin
		a[i][j]:=1;
		go(i,j);
		put(E);
	end else a[i][j]:=-1;
end;
i:=x+1;
j:=y;
if a[i][j]=0 then begin
	if put(S)=EM then begin
		a[i][j]:=1;
		go(i,j);
		put(N);
	end else a[i][j]:=-1;
end;
end;
 
begin
fillchar(a,sizeof(a),0);
a[40][40]:=1;
go(40,40);
done();
end.